// 导入baseService
import { fetch, apiFormat, apiFormat2 } from '@/service/baseService';

const listApi = '/api/user-center/user';                                // 用户中心列表            method 'GET'
const saveApi = '/api/user-center/user';                                // 新增用户信息            method 'POST'
const getOneApi = '/api/user-center/user/{userId}';                     // 通过ID获取信息            method 'GET'

const updateApi = '/api/user-center/user/{userId}';                     // 用户修改               method 'PUT'

const deleteApi = '/api/user-center/user/{userId}';                     // 用户删除               method 'DELETE'

const setStatusApi = '/api/user-center/user/{userId}/status/{status}';  // 启用/禁用账号           method 'PUT'

const updatePasswordApi = '/api/user-center/auth/{userId}';             // 修改用户密码            method 'PUT'
/**
 * 列表
 */
export default {
  /* GET */
  /**
   * 获取当前用户
   * @param fnSuccess 成功回掉
   * @param fnFail    失败回掉
   * @return void
   */
  getOne: (opt) => fetch.get(apiFormat(getOneApi, opt)),
  /* GET */
  /**
   * 获取用户列表
   * @param fnSuccess 成功回掉
   * @param fnFail    失败回掉
   * @return void
   */
  getList: (opt, payload) => fetch.get(apiFormat2(listApi, opt), payload),
  /**
 * 用户新增
 * @param fnSuccess 成功回掉
 * @param fnFail    失败回掉
 * @return void
 */
  userSave: (payload) => fetch.post(saveApi, payload),
  /* UPDATE */
  /**
   * 用户修改
   * @param fnSuccess 成功回掉
   * @param fnFail    失败回掉
   * @return void
   */
  userUpdate: (opt, payload) => fetch.put(apiFormat(updateApi, opt), payload),
  /**
   * 删除用户
   * @param payload
   */
  userDelete: (opt, payload) => fetch.delete(apiFormat(deleteApi, opt), payload),
  /**
   * 正常停用用户
   * @param fnSuccess 成功回掉
   * @param fnFail    失败回掉
   * @return void
   */
  setStatus: (opt) => fetch.put(apiFormat(apiFormat(setStatusApi, opt))),
  /**
   * 修改用户密码
   * @param payload
   */
  updatePassword: (opt, payload) => fetch.put(apiFormat(updatePasswordApi, opt), payload)
};
